package com.suse.service.admin.edu.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.suse.common.config.response.R;
import com.suse.service.admin.edu.model.entity.Chapter;
import com.suse.service.admin.edu.model.param.ChapterSaveParam;
import com.suse.service.admin.edu.model.param.ChapterUpdateParam;

/**
 * <p>
 * 章节 服务类
 * </p>
 *
 * @author 辜玉彬
 * @since 2022-08-11
 */
public interface ChapterService extends IService<Chapter> {

    /**
     * 获取章节列表
     * @param courseId 课程ID
     * @return R
     */
    R getChapterListByCourseId(String courseId);

    /**
     * 添加章节
     * @param chapterSaveParam 章节添加参数
     * @return R
     */
    R saveChapter(ChapterSaveParam chapterSaveParam);

    /**
     * 修改章节
     * @param chapterUpdateParam 章节修改参数
     * @return R
     */
    R updateChapter(ChapterUpdateParam chapterUpdateParam);

    /**
     * 通过ID获取章节信息
     * @param id ID
     * @return R
     */
    R getChapterInfoById(String id);

    /**
     * 通过ID删除章节
     * @param id ID
     * @return R
     */
    R removeChapterById(String id);

}
